<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<TITLE>
DRA Systems: OR-Objects 1.2.4: Class  PointGraph
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../drasys/or/graph/Operations.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../drasys/or/graph/PropertiesAdapter.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="PointGraph.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_drasys.or.graph.Graph">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
drasys.or.graph</FONT>
<BR>
Class  PointGraph</H2>
<PRE>
java.lang.Object
  |
  +--<A HREF="../../../drasys/or/graph/Graph.html">drasys.or.graph.Graph</A>
        |
        +--<A HREF="../../../drasys/or/graph/BaseGraph.html">drasys.or.graph.BaseGraph</A>
              |
              +--<B>drasys.or.graph.PointGraph</B>
</PRE>
<HR>
<DL>
<DT>public class <B>PointGraph</B><DT>extends <A HREF="../../../drasys/or/graph/BaseGraph.html">BaseGraph</A><DT>implements <A HREF="../../../drasys/or/graph/GraphI.html">GraphI</A>, <A HREF="../../../drasys/or/graph/AddVertexI.html">AddVertexI</A>, <A HREF="../../../drasys/or/graph/RemoveVertexI.html">RemoveVertexI</A></DL>

<P>
An implementation of a graph where the vertices are a set of points and the edge values
are the distances between the end points.
The distance between two end points is dependent on the coordinate system.
<BR>
The edge method 'getCost' returns the distance scaled by 'costPerDistance'.
The edge method 'getTime' returns the distance scaled by 'timePerDistance'.
The edge method 'getDistance' returns the distance between the end points.
The edge method 'getValue()'returns a new 'EdgeValue' containing the values.
<BR>
The vertex method 'doubleValue()' returns a double value based on the vertex value object.
If the value object is not null and either implements 'DoubleI' or is a subclass of 'Number'
then the returned value is 'value.doubleValue()'.
Otherwise; the value is zero.

<P><FONT COLOR="#CC0000"><FONT SIZE=+1>References:</FONT></FONT><FONT SIZE=+1></FONT><P><B><A NAME="0471513563"HREF="http://www.amazon.com/exec/obidos/ISBN=0471513563/opsresearchcomA/" TARGET="amazon.com">Graphs : Theory and Algorithms</A></B><BR>&nbsp;&nbsp;&nbsp;&nbsp;K. Thulasiraman, M.N.S. Swamy / Paperback / Published 1992<BR>
<P>
<DL>
<DT><B>See Also: </B><DD><A HREF="../../../serialized-form.html#drasys.or.graph.PointGraph">Serialized Form</A></DL>
<HR>

<P>
<!-- ======== INNER CLASS SUMMARY ======== -->


<!-- =========== FIELD SUMMARY =========== -->

<A NAME="fields_inherited_from_class_drasys.or.graph.Graph"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Fields inherited from class drasys.or.graph.<A HREF="../../../drasys/or/graph/Graph.html">Graph</A></B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../drasys/or/graph/Graph.html#_symmetric">_symmetric</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#PointGraph()">PointGraph</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#PointGraph(int)">PointGraph</A></B>(int&nbsp;vertexCapacity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#PointGraph(drasys.or.matrix.VectorI, drasys.or.matrix.VectorI)">PointGraph</A></B>(<A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;x,
           <A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;y)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializes the graph with vertices from the values in the vectors.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#PointGraph(drasys.or.matrix.VectorI, drasys.or.matrix.VectorI, drasys.or.matrix.VectorI)">PointGraph</A></B>(<A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;x,
           <A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;y,
           <A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;z)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initializes the graph with vertices from the values in the vectors.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#addVertex(java.lang.Object, java.lang.Object)">addVertex</A></B>(java.lang.Object&nbsp;key,
          java.lang.Object&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a new vertex to the graph.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/geom/CoordinateSystemI.html">CoordinateSystemI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#cordinateSystem()">cordinateSystem</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the coordinate system used by the graph.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/graph/EdgeI.html">EdgeI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#getEdge(drasys.or.graph.VertexI, drasys.or.graph.VertexI, java.lang.Object)">getEdge</A></B>(<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;from,
        <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;to,
        java.lang.Object&nbsp;edgeKey)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the edge between the 'from' and 'to' vertices whose key matches 'edgeKey'.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/graph/EdgeI.html">EdgeI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#getMutableEdge(drasys.or.graph.VertexI, drasys.or.graph.VertexI, java.lang.Object)">getMutableEdge</A></B>(<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;from,
               <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;to,
               java.lang.Object&nbsp;edgeKey)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the edge between the 'from' and 'to' vertices whose key matches 'edgeKey'.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#isSymmetric()">isSymmetric</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns true if the points are from a symmetric coordinate system, false otherwise.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/graph/GraphI.html">GraphI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#newGraph(int, int)">newGraph</A></B>(int&nbsp;vertexCapacity,
         int&nbsp;edgeCapacity)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a new empty PointGraph.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#newVertex(java.lang.Object, java.lang.Object)">newVertex</A></B>(java.lang.Object&nbsp;key,
          java.lang.Object&nbsp;value)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#removeVertex(java.lang.Object, boolean)">removeVertex</A></B>(java.lang.Object&nbsp;key,
             boolean&nbsp;removeZeroVertices)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes a vertex whose key matches the argument and all its adjacent edges.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#removeVertex(drasys.or.graph.VertexI, boolean)">removeVertex</A></B>(<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;vertex,
             boolean&nbsp;removeZeroVertices)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Removes a vertex whose key matches the key in the argument and all its adjacent edges.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#setCost(double)">setCost</A></B>(double&nbsp;cost)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the cost per distance used to compute travel cost from the distance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#setSpeed(double)">setSpeed</A></B>(double&nbsp;speed)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the speed used to compute travel time from the distance.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.lang.String</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#toString()">toString</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../drasys/or/graph/PointGraph.html#useDistanceProxy(boolean)">useDistanceProxy</A></B>(boolean&nbsp;useProxy)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;If useProxy is true then PointI.distanceProxyTo() will be used as the edge value.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_drasys.or.graph.BaseGraph"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class drasys.or.graph.<A HREF="../../../drasys/or/graph/BaseGraph.html">BaseGraph</A></B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../drasys/or/graph/BaseGraph.html#addVertex(java.lang.Object)">addVertex</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#addVertex(drasys.or.graph.VertexI)">addVertex</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#ensureVertexCapacity(int)">ensureVertexCapacity</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#getChangeCount()">getChangeCount</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#getVertex(java.lang.Object)">getVertex</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#removeAllVertices()">removeAllVertices</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#sizeOfDirectedEdges()">sizeOfDirectedEdges</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#sizeOfEdges()">sizeOfEdges</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#sizeOfVertices()">sizeOfVertices</A>, 
<A HREF="../../../drasys/or/graph/BaseGraph.html#vertices()">vertices</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_drasys.or.graph.Graph"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class drasys.or.graph.<A HREF="../../../drasys/or/graph/Graph.html">Graph</A></B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../drasys/or/graph/Graph.html#edges()">edges</A>, 
<A HREF="../../../drasys/or/graph/Graph.html#equals(java.lang.Object)">equals</A>, 
<A HREF="../../../drasys/or/graph/Graph.html#getEdge(drasys.or.graph.EdgeI)">getEdge</A>, 
<A HREF="../../../drasys/or/graph/Graph.html#getEdge(java.lang.Object, java.lang.Object, java.lang.Object)">getEdge</A>, 
<A HREF="../../../drasys/or/graph/Graph.html#isSubsetOf(drasys.or.graph.GraphI)">isSubsetOf</A>, 
<A HREF="../../../drasys/or/graph/Graph.html#mutableEdges()">mutableEdges</A>, 
<A HREF="../../../drasys/or/graph/Graph.html#setSymmetric(java.lang.Boolean)">setSymmetric</A>, 
<A HREF="../../../drasys/or/graph/Graph.html#toString(java.lang.String)">toString</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class java.lang.Object</B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, 
finalize, 
getClass, 
hashCode, 
notify, 
notifyAll, 
wait, 
wait, 
wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->


<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="PointGraph()"><!-- --></A><H3>
PointGraph</H3>
<PRE>
public <B>PointGraph</B>()</PRE>
<DL>
</DL>
<HR>

<A NAME="PointGraph(int)"><!-- --></A><H3>
PointGraph</H3>
<PRE>
public <B>PointGraph</B>(int&nbsp;vertexCapacity)</PRE>
<DL>
</DL>
<HR>

<A NAME="PointGraph(drasys.or.matrix.VectorI, drasys.or.matrix.VectorI)"><!-- --></A><H3>
PointGraph</H3>
<PRE>
public <B>PointGraph</B>(<A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;x,
                  <A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;y)</PRE>
<DL>
<DD>Initializes the graph with vertices from the values in the vectors.
The vertex key will be an 'Integer' object with a value corresponding to the vector index.
The vertex value will be a 'rect2.Point'.</DL>
<HR>

<A NAME="PointGraph(drasys.or.matrix.VectorI, drasys.or.matrix.VectorI, drasys.or.matrix.VectorI)"><!-- --></A><H3>
PointGraph</H3>
<PRE>
public <B>PointGraph</B>(<A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;x,
                  <A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;y,
                  <A HREF="../../../drasys/or/matrix/VectorI.html">VectorI</A>&nbsp;z)</PRE>
<DL>
<DD>Initializes the graph with vertices from the values in the vectors.
The vertex key will be an 'Integer' object with a value corresponding to the vector index.
The vertex value will be a 'rect3.Point'.</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="setSpeed(double)"><!-- --></A><H3>
setSpeed</H3>
<PRE>
public void <B>setSpeed</B>(double&nbsp;speed)</PRE>
<DL>
<DD>Sets the speed used to compute travel time from the distance.
The default value is '1.0'. (time=distance/speed)<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCost(double)"><!-- --></A><H3>
setCost</H3>
<PRE>
public void <B>setCost</B>(double&nbsp;cost)</PRE>
<DL>
<DD>Sets the cost per distance used to compute travel cost from the distance.
The default value is '1.0'. (cost=distance*costPerDistance)<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="cordinateSystem()"><!-- --></A><H3>
cordinateSystem</H3>
<PRE>
public <A HREF="../../../drasys/or/geom/CoordinateSystemI.html">CoordinateSystemI</A> <B>cordinateSystem</B>()</PRE>
<DL>
<DD>Returns the coordinate system used by the graph.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>null if no points have been added.</DL>
</DD>
</DL>
<HR>

<A NAME="useDistanceProxy(boolean)"><!-- --></A><H3>
useDistanceProxy</H3>
<PRE>
public void <B>useDistanceProxy</B>(boolean&nbsp;useProxy)</PRE>
<DL>
<DD>If useProxy is true then PointI.distanceProxyTo() will be used as the edge value.
If useProxy is false then PointI.distanceTo() will be used as the edge value.
The default is to use PointI.distanceTo() for the return value.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="addVertex(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
addVertex</H3>
<PRE>
public <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A> <B>addVertex</B>(java.lang.Object&nbsp;key,
                         java.lang.Object&nbsp;value)
                  throws <A HREF="../../../drasys/or/graph/DuplicateVertexException.html">DuplicateVertexException</A></PRE>
<DL>
<DD>Adds a new vertex to the graph. The first point added to the graph sets the coordinate system
of the graph.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../drasys/or/graph/AddVertexI.html#addVertex(java.lang.Object, java.lang.Object)">addVertex</A> in interface <A HREF="../../../drasys/or/graph/AddVertexI.html">AddVertexI</A><DT><B>Overrides:</B><DD><A HREF="../../../drasys/or/graph/BaseGraph.html#addVertex(java.lang.Object, java.lang.Object)">addVertex</A> in class <A HREF="../../../drasys/or/graph/BaseGraph.html">BaseGraph</A></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../drasys/or/graph/DuplicateVertexException.html">DuplicateVertexException</A> - if the vertex already exists.<DD><A HREF="../../../drasys/or/graph/GraphError.html">GraphError</A> - if the vertex value is null, does not implement geom.PointI or is not from the correct coordinate system.</DL>
</DD>
</DL>
<HR>

<A NAME="newVertex(java.lang.Object, java.lang.Object)"><!-- --></A><H3>
newVertex</H3>
<PRE>
protected <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A> <B>newVertex</B>(java.lang.Object&nbsp;key,
                            java.lang.Object&nbsp;value)</PRE>
<DL>
<DD><DL>
<DT><B>Overrides:</B><DD><A HREF="../../../drasys/or/graph/BaseGraph.html#newVertex(java.lang.Object, java.lang.Object)">newVertex</A> in class <A HREF="../../../drasys/or/graph/BaseGraph.html">BaseGraph</A></DL>
</DD>
</DL>
<HR>

<A NAME="isSymmetric()"><!-- --></A><H3>
isSymmetric</H3>
<PRE>
public boolean <B>isSymmetric</B>()</PRE>
<DL>
<DD>Returns true if the points are from a symmetric coordinate system, false otherwise.
If 'setSymmetric' has been called, then the override value is returned.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../drasys/or/graph/GraphI.html#isSymmetric()">isSymmetric</A> in interface <A HREF="../../../drasys/or/graph/GraphI.html">GraphI</A></DL>
</DD>
</DL>
<HR>

<A NAME="newGraph(int, int)"><!-- --></A><H3>
newGraph</H3>
<PRE>
public <A HREF="../../../drasys/or/graph/GraphI.html">GraphI</A> <B>newGraph</B>(int&nbsp;vertexCapacity,
                       int&nbsp;edgeCapacity)</PRE>
<DL>
<DD>Create a new empty PointGraph.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>Null if not successfull.</DL>
</DD>
</DL>
<HR>

<A NAME="getEdge(drasys.or.graph.VertexI, drasys.or.graph.VertexI, java.lang.Object)"><!-- --></A><H3>
getEdge</H3>
<PRE>
public <A HREF="../../../drasys/or/graph/EdgeI.html">EdgeI</A> <B>getEdge</B>(<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;from,
                     <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;to,
                     java.lang.Object&nbsp;edgeKey)</PRE>
<DL>
<DD>Get the edge between the 'from' and 'to' vertices whose key matches 'edgeKey'.
All the edges in a PointGraph have a null key value so 'edgeKey' must be null to match.
The arguments 'from' and 'to' must be vertices owned by this graph.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../drasys/or/graph/GraphI.html#getEdge(drasys.or.graph.VertexI, drasys.or.graph.VertexI, java.lang.Object)">getEdge</A> in interface <A HREF="../../../drasys/or/graph/GraphI.html">GraphI</A></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>Null if the edge is not in the graph.</DL>
</DD>
</DL>
<HR>

<A NAME="getMutableEdge(drasys.or.graph.VertexI, drasys.or.graph.VertexI, java.lang.Object)"><!-- --></A><H3>
getMutableEdge</H3>
<PRE>
public <A HREF="../../../drasys/or/graph/EdgeI.html">EdgeI</A> <B>getMutableEdge</B>(<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;from,
                            <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;to,
                            java.lang.Object&nbsp;edgeKey)</PRE>
<DL>
<DD>Get the edge between the 'from' and 'to' vertices whose key matches 'edgeKey'.
All the edges in a PointGraph have a null key value so 'edgeKey' must be null to match.
The graph is allowed to return a mutable edge if that is more efficient,
but the edge contents must be used before 'getMutableEdge()' is called again.
The arguments 'from' and 'to' must be vertices owned by this graph.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../drasys/or/graph/GraphI.html#getMutableEdge(drasys.or.graph.VertexI, drasys.or.graph.VertexI, java.lang.Object)">getMutableEdge</A> in interface <A HREF="../../../drasys/or/graph/GraphI.html">GraphI</A></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>Null if the edge is not in the graph.</DL>
</DD>
</DL>
<HR>

<A NAME="removeVertex(drasys.or.graph.VertexI, boolean)"><!-- --></A><H3>
removeVertex</H3>
<PRE>
public <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A> <B>removeVertex</B>(<A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A>&nbsp;vertex,
                            boolean&nbsp;removeZeroVertices)
                     throws <A HREF="../../../drasys/or/graph/VertexNotFoundException.html">VertexNotFoundException</A></PRE>
<DL>
<DD>Removes a vertex whose key matches the key in the argument and all its adjacent edges.
The argument 'removeZeroVertices' is not used.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../drasys/or/graph/RemoveVertexI.html#removeVertex(drasys.or.graph.VertexI, boolean)">removeVertex</A> in interface <A HREF="../../../drasys/or/graph/RemoveVertexI.html">RemoveVertexI</A></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The removed vertex.</DL>
</DD>
</DL>
<HR>

<A NAME="removeVertex(java.lang.Object, boolean)"><!-- --></A><H3>
removeVertex</H3>
<PRE>
public <A HREF="../../../drasys/or/graph/VertexI.html">VertexI</A> <B>removeVertex</B>(java.lang.Object&nbsp;key,
                            boolean&nbsp;removeZeroVertices)
                     throws <A HREF="../../../drasys/or/graph/VertexNotFoundException.html">VertexNotFoundException</A></PRE>
<DL>
<DD>Removes a vertex whose key matches the argument and all its adjacent edges.
The argument 'removeZeroVertices' is not used.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../drasys/or/graph/RemoveVertexI.html#removeVertex(java.lang.Object, boolean)">removeVertex</A> in interface <A HREF="../../../drasys/or/graph/RemoveVertexI.html">RemoveVertexI</A></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>The removed vertex.</DL>
</DD>
</DL>
<HR>

<A NAME="toString()"><!-- --></A><H3>
toString</H3>
<PRE>
public java.lang.String <B>toString</B>()</PRE>
<DL>
<DD><DL>
<DT><B>Overrides:</B><DD>toString in class java.lang.Object</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../drasys/or/graph/Operations.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../drasys/or/graph/PropertiesAdapter.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="PointGraph.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_drasys.or.graph.Graph">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
Copyright(C)1997-2000 by DRA Systems all rights reserved. <A HREF=http://OpsResearch.com TARGET=HOME>OpsResearch.com</A>
</BODY>
</HTML>
